@echo off

setlocal

rem protoc.exe路径
set PROTOC_PATH=.\java
rem grpc plugin路径
set GRPC_PATH=.\java
rem protoc.exe的名字
set PROTOC=protoc-3.10.0-windows-x86_64

rem 修改PATH环境变量
set PATH=%PATH%;%PROTOC_PATH%;%GRPC_PATH%

rem 输出protoc版本新
%PROTOC% --version

rem java语言的grpc plugin绝对路径
set GRPC_JAVA_PLUGIN=%GRPC_PATH%\protoc-gen-grpc-java-1.25.0-windows-x86_64.exe

rem 生成文件的路径
set JAVA_OUT=.\gen\java

rem 删除原有的文件, 建立新文件夹
rd /S /Q %JAVA_OUT%
md %JAVA_OUT%

set PROTO_PATH=./protos
rem 使用完整路径
set PROTO_FILES=%PROTO_PATH%/*.proto

rem 生成java代码
rem 生成序列化代码
%PROTOC% --proto_path=%PROTO_PATH% --java_out=%JAVA_OUT% %PROTO_FILES%
rem (1) 生成C++服务端框架代码(根据需要决定是否生成,如果不需要,注释掉该行代码即可!)
%PROTOC% --proto_path=%PROTO_PATH% --grpc_out=%JAVA_OUT% --plugin=protoc-gen-grpc=%GRPC_JAVA_PLUGIN% %PROTO_FILES%

endlocal
pause
